﻿package com.eleme.entity;

import java.sql.ResultSet;
import java.util.List;


/** 
 * ClassName: IEntityFactory <br/> 
 * Function: TODO ADD FUNCTION. <br/> 
 * Reason: TODO ADD REASON(可选). <br/> 
 * date: 2017年12月22日 下午2:35:55 <br/> 
 * 
 * @author Pan 
 * @version @param <T> 
 * @since JDK 1.8 
 */  
public interface IEntityFactory<T> {


	/** 
	 * createEntity:创建一个空的实体类实例. <br/> 
	 * 
	 * @author Pan 
	 * @return 
	 * @since JDK 1.8 
	 */ 
	T createEntity();
	

	/** 
	 * createEntity:根据ResultSet的内容创建一个实体类实例. <br/> 
	 * 用于根据单行查询结果生成实体对象
	 * 
	 * @author Pan 
	 * @param rs
	 * @return 
	 * @since JDK 1.8 
	 */ 
	T createEntity(ResultSet rs);
	

	/** 
	 * createEntities:根据ResultSet的内容创建复数实体类实例. <br/> 
	 * 用于根据多行结果生成多个实体对象，以列表返回
	 * 
	 * @author Pan 
	 * @param rs
	 * @return 实体对象列表
	 * @since JDK 1.8 
	 */ 
	List<T> createEntities(ResultSet rs);
}
